home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 49 / Amiga Format CD49 (2000-01-17)(Future Publishing)(GB)(Track 1 of 3)[!][issue 2000-02].iso / -serious- / graphics / gnuplot / gnuplot-3.7.1src / gnuplot-3.7.1 / matrix.h < prev    next >
C/C++ Source or Header  |  1999-11-29  |  1KB  |  52 lines

  1. /* $Id: matrix.h,v 1.8 1998/06/30 16:42:24 lhecking Exp $ */
  2.  
  3. /*
  4.  *    Header file: public functions in matrix.c
  5.  *
  6.  *
  7.  *    Copyright of this module:   Carsten Grammes, 1993
  8.  *      Experimental Physics, University of Saarbruecken, Germany
  9.  *
  10.  *    Internet address: cagr@rz.uni-sb.de
  11.  *
  12.  *    Permission to use, copy, and distribute this software and its
  13.  *    documentation for any purpose with or without fee is hereby granted,
  14.  *    provided that the above copyright notice appear in all copies and
  15.  *    that both that copyright notice and this permission notice appear
  16.  *    in supporting documentation.
  17.  *
  18.  *      This software is provided "as is" without express or implied warranty.
  19.  */
  20.  
  21.  
  22. #ifndef MATRIX_H
  23. #define MATRIX_H
  24.  
  25. #include "ansichek.h"
  26.  
  27. #ifdef EXT
  28. #undef EXT
  29. #endif
  30.  
  31. #ifdef MATRIX_MAIN
  32. #define EXT
  33. #else
  34. #define EXT extern
  35. #endif
  36.  
  37.  
  38. /******* public functions ******/
  39.  
  40. EXT double  *vec __PROTO((int n));
  41. EXT int     *ivec __PROTO((int n));
  42. EXT double  **matr __PROTO((int r, int c));
  43. EXT void    free_matr __PROTO((double **m));
  44. EXT double  *redim_vec __PROTO((double **v, int n));
  45. EXT void    redim_ivec __PROTO((int **v, int n));
  46. EXT void    solve __PROTO((double **a, int n, double **b, int m));
  47. EXT void    Givens __PROTO((double **C, double *d, double *x,
  48.             double *r, int N, int n, int want_r)); 
  49. EXT void    Invert_RtR __PROTO((double **R, double **I, int n));
  50.  
  51. #endif
  52.